<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Notifications\Notifiable;
use Tymon\JWTAuth\Contracts\JWTSubject; // 若使用Tymon/JWTAuth库需要引入

class Admin extends BaseModel 
{
    use HasFactory, Notifiable;

    protected $table = 'admins';

    /**
     * 可批量赋值字段
     */
    protected $fillable = [
        'name',
        'account',
        'phone',
        'password',
        'level'
    ];

    /**
     * 序列化隐藏字段
     */
    protected $hidden = [
        'password',
        'remember_token'
    ];

    /**
     * JWT标识获取（必须实现）
     */
    public function getJWTIdentifier()
    {
        return $this->getKey();
    }

    /**
     * JWT自定义声明（可选实现）
     */
    public function getJWTCustomClaims()
    {
        return ['level' => $this->level]; // 可携带权限等级到token中
    }
}